]> git.pld-linux.org Git - packages/gtk+2.git/blob - gtk+2.spec
de23839f4cc8886817de752075d59944ca86c292
[packages/gtk+2.git] / gtk+2.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # disable gtk-doc
4 %bcond_without  cups            # disable CUPS support
5 %bcond_without  papi            # disable PAPI support
6 %bcond_without  static_libs     # don't build static library
7
8 Summary:        The GIMP Toolkit
9 Summary(cs.UTF-8):      Sada nástrojů pro GIMP
10 Summary(de.UTF-8):      Der GIMP-Toolkit
11 Summary(fi.UTF-8):      GIMP-työkalukokoelma
12 Summary(fr.UTF-8):      Le toolkit de GIMP
13 Summary(it.UTF-8):      Il toolkit per GIMP
14 Summary(pl.UTF-8):      GIMP Toolkit
15 Summary(tr.UTF-8):      GIMP ToolKit arayüz kitaplığı
16 Name:           gtk+2
17 Version:        2.24.32
18 Release:        1
19 Epoch:          2
20 License:        LGPL v2+
21 Group:          X11/Libraries
22 Source0:        http://ftp.gnome.org/pub/GNOME/sources/gtk+/2.24/gtk+-%{version}.tar.xz
23 # Source0-md5:  d5742aa42275203a499b59b4c382a784
24 Patch0:         %{name}-arch_confdir.patch
25 Patch1:         %{name}-papi.patch
26 URL:            http://www.gtk.org/
27 BuildRequires:  atk-devel >= 1:1.30.0-3
28 BuildRequires:  autoconf >= 2.62
29 BuildRequires:  automake >= 1:1.7
30 BuildRequires:  cairo-devel >= 1.6.0
31 %if %{with cups} || %{with papi}
32 BuildRequires:  cups-devel
33 %endif
34 BuildRequires:  docbook-dtd412-xml
35 BuildRequires:  docbook-style-xsl
36 BuildRequires:  gdk-pixbuf2-devel >= 2.22.0
37 BuildRequires:  gettext-tools
38 BuildRequires:  glib2-devel >= 1:2.28.0
39 BuildRequires:  gobject-introspection-devel >= 0.10.0
40 %{?with_apidocs:BuildRequires:  gtk-doc >= 1.17}
41 BuildRequires:  gtk-doc-automake >= 1.11
42 BuildRequires:  libtool >= 1:1.4.2-9
43 BuildRequires:  libxml2-progs >= 1:2.6.31
44 BuildRequires:  libxslt-progs >= 1.1.20
45 BuildRequires:  pango-devel >= 1:1.28.1-4
46 %{?with_papi:BuildRequires:     papi-devel}
47 BuildRequires:  perl-base
48 BuildRequires:  perl-devel
49 BuildRequires:  pkgconfig
50 BuildRequires:  rpm-pythonprov
51 BuildRequires:  rpmbuild(macros) >= 1.311
52 BuildRequires:  sed >= 4.0
53 BuildRequires:  sqlite3-devel
54 BuildRequires:  tar >= 1:1.22
55 BuildRequires:  xorg-lib-libX11-devel
56 BuildRequires:  xorg-lib-libXcomposite-devel
57 BuildRequires:  xorg-lib-libXcursor-devel
58 BuildRequires:  xorg-lib-libXdamage-devel
59 BuildRequires:  xorg-lib-libXext-devel
60 BuildRequires:  xorg-lib-libXfixes-devel
61 BuildRequires:  xorg-lib-libXft-devel
62 BuildRequires:  xorg-lib-libXi-devel
63 BuildRequires:  xorg-lib-libXinerama-devel
64 BuildRequires:  xorg-lib-libXrandr-devel >= 1.3.0
65 BuildRequires:  xorg-lib-libXrender-devel
66 BuildRequires:  xz
67 Requires:       atk >= 1:1.30.0
68 Requires:       cairo >= 1.6.0
69 Requires:       gdk-pixbuf2 >= 2.22.0
70 Requires:       glib2 >= 1:2.28.0
71 Requires:       pango >= 1:1.26.0
72 Requires:       xorg-lib-libXrandr >= 1.3.0
73 %if %{with cups}
74 # cups is used by default if gtk+ is built with cups
75 Suggests:       %{name}-cups = %{epoch}:%{version}-%{release}
76 %endif
77 Provides:       gail = 1.23.0
78 Provides:       gtk2 = %{version}
79 Obsoletes:      gail
80 Obsoletes:      gtk2
81 # sr@Latn vs. sr@latin
82 Conflicts:      glibc-misc < 6:2.7
83 Conflicts:      gtk2-engines < 1:2.2.0-6
84 # autopanog.exe crashes with gtk+2 2.8.x and libgdiplus 1.1.8
85 Conflicts:      libgdiplus < 1.1.9
86 Requires(post): gtk-update-icon-cache
87 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
88
89 %define         abivers 2.10.0
90
91 %if "%{_lib}" != "lib"
92 %define         libext          %(lib="%{_lib}"; echo ${lib#lib})
93 %define         _sysconfdir     /etc/gtk%{libext}-2.0
94 %define         pqext           -%{libext}
95 %else
96 %define         _sysconfdir     /etc/gtk-2.0
97 %define         pqext           %{nil}
98 %endif
99
100 %description
101 GTK+, which stands for the GIMP ToolKit, is a library for creating
102 graphical user interfaces for the X Window System. It is designed to
103 be small, efficient, and flexible. GTK+ is written in C with a very
104 object-oriented approach. GDK (part of GTK+) is a drawing toolkit
105 which provides a thin layer over Xlib to help automate things like
106 dealing with different color depths, and GTK is a widget set for
107 creating user interfaces.
108
109 %description -l cs.UTF-8
110 Knihovny X původně psané pro GIMP, které nyní používá také řada jiných
111 programů.
112
113 %description -l da.UTF-8
114 X biblioteker, oprindeligt udviklet til GIMP, men anvendes nu af flere
115 forskellige programmer.
116
117 %description -l de.UTF-8
118 Die X-Libraries, die ursprünglich für GIMP geschrieben wurden und
119 mittlerweile für eine ganze Reihe anderer Programme benutzt werden.
120
121 %description -l fr.UTF-8
122 X-kirjastot, jotka alunperin kirjoitettiin GIMP:lle, mutta joita
123 käytetään nyt myös useissa muissakin ohjelmissa.
124
125 %description -l it.UTF-8
126 Libreria X scritta per GIMP. Viene usata da diversi programmi.
127
128 %description -l pl.UTF-8
129 GTK+, która to biblioteka stała się podstawą programu GIMP, zawiera
130 funkcje do tworzenia graficznego interfejsu użytkownika pod X Window.
131 Była tworzona z założeniem żeby była mała, efektywna i wygodna. GTK+
132 jest napisane w C z podejściem zorientowanym bardzo obiektowo. GDK
133 (część GTK+) jest warstwą pośrednią pomiędzy Xlib a właściwym GTK
134 zapewniającą pracę niezależnie od głębi koloru (ilości bitów na
135 piksel). GTK (druga część GTK+) jest natomiast już zbiorem różnego
136 rodzaju kontrolek służących do tworzenia interfejsu użytkownika.
137
138 %description -l tr.UTF-8
139 Başlangıçta GIMP için yazılmış X kitaplıkları. Şu anda başka
140 programlarca da kullanılmaktadır.
141
142 %package devel
143 Summary:        GTK+ header files and development documentation
144 Summary(cs.UTF-8):      Sada nástrojů GIMP a kreslící kit GIMP
145 Summary(da.UTF-8):      GIMP Toolkit og GIMP Tegnings-værktøj
146 Summary(de.UTF-8):      GIMP Toolkit und GIMP Drawing Kit
147 Summary(fi.UTF-8):      Gimp-työkalukokoelma ja Gimp-piirtotyökalut
148 Summary(fr.UTF-8):      Toolkit de GIMP (GTK) et Kit de dessin de GIMP (GDK)
149 Summary(it.UTF-8):      GIMP Toolkit and GIMP Drawing Kit
150 Summary(pl.UTF-8):      Pliki nagłówkowe i dokumentacja do GTK+
151 Summary(tr.UTF-8):      GIMP araç takımı ve çizim takımı
152 Group:          X11/Development/Libraries
153 Requires:       %{name} = %{epoch}:%{version}-%{release}
154 Requires:       atk-devel >= 1:1.30.0
155 Requires:       cairo-devel >= 1.6.0
156 Requires:       gdk-pixbuf2-devel >= 2.22.0
157 Requires:       glib2-devel >= 1:2.28.0
158 Requires:       pango-devel >= 1:1.26.0
159 Requires:       shared-mime-info
160 Requires:       xorg-lib-libX11-devel
161 Requires:       xorg-lib-libXcomposite-devel
162 Requires:       xorg-lib-libXcursor-devel
163 Requires:       xorg-lib-libXdamage-devel
164 Requires:       xorg-lib-libXext-devel
165 Requires:       xorg-lib-libXfixes-devel
166 Requires:       xorg-lib-libXft-devel
167 Requires:       xorg-lib-libXi-devel
168 Requires:       xorg-lib-libXinerama-devel
169 Requires:       xorg-lib-libXrandr-devel >= 1.3.0
170 Requires:       xorg-lib-libXrender-devel
171 Provides:       gail-devel = 1.23.0
172 Obsoletes:      gail-devel
173 Obsoletes:      gtk2-devel
174
175 %description devel
176 Header files and development documentation for the GTK+ libraries.
177
178 %description devel -l pl.UTF-8
179 Pliki nagłówkowe i dokumentacja do bibliotek GTK+.
180
181 %package static
182 Summary:        GTK+ static libraries
183 Summary(pl.UTF-8):      Biblioteki statyczne GTK+
184 Group:          X11/Development/Libraries
185 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
186 Provides:       gail-static = 1.23.0
187 Obsoletes:      gail-static
188
189 %description static
190 GTK+ static libraries.
191
192 %description static -l pl.UTF-8
193 Biblioteki statyczne GTK+
194
195 %package apidocs
196 Summary:        GTK+ API documentation
197 Summary(pl.UTF-8):      Dokumentacja API GTK+
198 Group:          Documentation
199 Requires:       gtk-doc-common
200 Provides:       gail-apidocs = 1.23.0
201 Obsoletes:      gail-apidocs
202 %if "%{_rpmversion}" >= "5"
203 BuildArch:      noarch
204 %endif
205
206 %description apidocs
207 GTK+ API documentation.
208
209 %description apidocs -l pl.UTF-8
210 Dokumentacja API GTK+.
211
212 %package examples
213 Summary:        GTK+ - example programs
214 Summary(pl.UTF-8):      GTK+ - programy przykładowe
215 Group:          X11/Development/Libraries
216 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
217
218 %description examples
219 GTK+ - example programs.
220
221 %description examples -l pl.UTF-8
222 GTK+ - przykładowe programy.
223
224 %package cups
225 Summary:        CUPS printing module for GTK+
226 Summary(pl.UTF-8):      Moduł GTK+ do drukowania przez CUPS
227 Group:          X11/Libraries
228 Requires:       %{name} = %{epoch}:%{version}-%{release}
229
230 %description cups
231 CUPS printing module for GTK+.
232
233 %description cups -l pl.UTF-8
234 Moduł GTK+ do drukowania przez CUPS.
235
236 %package papi
237 Summary:        PAPI printing module for GTK+
238 Summary(pl.UTF-8):      Moduł GTK+ do drukowania przez PAPI
239 Group:          X11/Libraries
240 Requires:       %{name} = %{epoch}:%{version}-%{release}
241 Requires:       papi
242
243 %description papi
244 PAPI printing module for GTK+.
245
246 %description papi -l pl.UTF-8
247 Moduł GTK+ do drukowania przez PAPI.
248
249 %prep
250 %setup -q -n gtk+-%{version}
251 %patch0 -p1
252 %patch1 -p1
253
254 %{__sed} -i -e '1s,/usr/bin/env python,/usr/bin/python,' gtk/gtk-builder-convert
255
256 %build
257 %{__libtoolize}
258 %{__glib_gettextize}
259 %{__aclocal}
260 %{__autoheader}
261 %{__autoconf}
262 %{__automake}
263 CPPFLAGS="%{rpmcppflags}%{?with_papi: -I/usr/include/papi}"
264 %configure \
265         %{!?with_cups:--disable-cups} \
266         %{?debug:--enable-debug=yes} \
267         --%{?with_apidocs:en}%{!?with_apidocs:dis}able-gtk-doc \
268         --enable-man \
269         %{!?with_papi:--disable-papi} \
270         --enable-shm \
271         --%{?with_static_libs:en}%{!?with_static_libs:dis}able-static \
272         --with-gdktarget=x11 \
273         --with-html-dir=%{_gtkdocdir} \
274         --with-xinput=yes
275
276 %{__make} CC="%{__cc}"
277
278 %install
279 rm -rf $RPM_BUILD_ROOT
280 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \
281         $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{abivers}/filesystems
282
283 %{__make} install \
284         DESTDIR=$RPM_BUILD_ROOT \
285         m4datadir=%{_aclocaldir} \
286         pkgconfigdir=%{_pkgconfigdir}
287
288 touch $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{abivers}/immodules.cache
289
290 cp -r examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
291
292 # shut up check-files (static modules and *.la for modules)
293 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules/*.la
294 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{abivers}/*/*.la
295 %if %{with static_libs}
296 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules/*.a
297 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{abivers}/*/*.a
298 %endif
299 # remove libtool files
300 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/*.la
301
302 # built in gtk+3.spec
303 %{__rm} $RPM_BUILD_ROOT%{_bindir}/gtk-update-icon-cache \
304         $RPM_BUILD_ROOT%{_mandir}/man1/gtk-update-icon-cache.1
305
306 %if "%{_lib}" != "lib"
307 # We need to have 32-bit and 64-bit binaries as they have hardcoded LIBDIR.
308 # (needed when multilib is used)
309 mv $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-2.0{,%{pqext}}
310 %endif
311
312 # for various GTK+2 modules
313 install -d $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules
314
315 %{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr@ije,sr@ijekavian}
316 # unsupported by glibc
317 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/io
318
319 %find_lang %{name} --all-name
320
321 %{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}/{gdk,gdk-pixbuf,gtk}}
322
323 %clean
324 rm -rf $RPM_BUILD_ROOT
325
326 %post
327 /sbin/ldconfig
328 umask 022
329 %{_bindir}/gtk-query-immodules-2.0%{pqext} --update-cache
330 exit 0
331
332 %postun
333 /sbin/ldconfig
334 if [ "$1" != "0" ]; then
335         umask 022
336         # we need to check for dir existence for multilib installs as the $1 is 1
337         # if we remove the other arch pkg will be still present.
338         # i.e we have installed gtk+2-2.16.5-1.x86_64 and gtk+2-2.16.5-1.i686, and remove gtk+2-2.16.5-1.i686
339         if [ -d %{_sysconfdir} ]; then
340                 %{_bindir}/gtk-query-immodules-2.0%{pqext} --update-cache
341         fi
342 fi
343 exit 0
344
345 %triggerpostun -- gtk+2 < 2:2.4.0
346 umask 022
347 %{_bindir}/gtk-query-immodules-2.0%{pqext} --update-cache
348 exit 0
349
350 %triggerin -- hicolor-icon-theme
351 if [ "$1" = "1" ] && [ "$2" = "1" ]; then
352         %update_icon_cache hicolor
353 fi
354
355 %files -f %{name}.lang
356 %defattr(644,root,root,755)
357 %doc AUTHORS NEWS README
358 %attr(755,root,root) %{_bindir}/gtk-query-immodules-2.0%{pqext}
359
360 %attr(755,root,root) %{_libdir}/libgailutil.so.*.*.*
361 %attr(755,root,root) %ghost %{_libdir}/libgailutil.so.18
362 %attr(755,root,root) %{_libdir}/libgdk-x11-2.0.so.*.*.*
363 %attr(755,root,root) %ghost %{_libdir}/libgdk-x11-2.0.so.0
364 %attr(755,root,root) %{_libdir}/libgtk-x11-2.0.so.*.*.*
365 %attr(755,root,root) %ghost %{_libdir}/libgtk-x11-2.0.so.0
366 %dir %{_libdir}/gtk-2.0
367 %dir %{_libdir}/gtk-2.0/modules
368 %attr(755,root,root) %{_libdir}/gtk-2.0/modules/libferret.so
369 %attr(755,root,root) %{_libdir}/gtk-2.0/modules/libgail.so
370 %dir %{_libdir}/gtk-2.0/%{abivers}
371 %dir %{_libdir}/gtk-2.0/%{abivers}/engines
372 %attr(755,root,root) %{_libdir}/gtk-2.0/%{abivers}/engines/libpixmap.so
373 %dir %{_libdir}/gtk-2.0/%{abivers}/filesystems
374 %dir %{_libdir}/gtk-2.0/%{abivers}/immodules
375 %attr(755,root,root) %{_libdir}/gtk-2.0/%{abivers}/immodules/im-*.so
376 %ghost %{_libdir}/gtk-2.0/%{abivers}/immodules.cache
377 %dir %{_libdir}/gtk-2.0/%{abivers}/printbackends
378 %attr(755,root,root) %{_libdir}/gtk-2.0/%{abivers}/printbackends/libprintbackend-file.so
379 %attr(755,root,root) %{_libdir}/gtk-2.0/%{abivers}/printbackends/libprintbackend-lpr.so
380 %{_libdir}/girepository-1.0/Gdk-2.0.typelib
381 %{_libdir}/girepository-1.0/GdkX11-2.0.typelib
382 %{_libdir}/girepository-1.0/Gtk-2.0.typelib
383
384 %dir %{_sysconfdir}
385 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/im-multipress.conf
386 %dir %{_datadir}/themes/Default/gtk-*
387 %{_datadir}/themes/Default/gtk-*/gtkrc
388 %dir %{_datadir}/themes/Emacs
389 %dir %{_datadir}/themes/Emacs/gtk-*
390 %{_datadir}/themes/Emacs/gtk-*/gtkrc
391 %dir %{_datadir}/themes/Raleigh
392 %dir %{_datadir}/themes/Raleigh/gtk-*
393 %{_datadir}/themes/Raleigh/gtk-*/gtkrc
394 %{_mandir}/man1/gtk-query-immodules-2.0.1*
395
396 %files devel
397 %defattr(644,root,root,755)
398 %doc ChangeLog
399 %attr(755,root,root) %{_bindir}/gtk-builder-convert
400 %attr(755,root,root) %{_libdir}/libgailutil.so
401 %attr(755,root,root) %{_libdir}/libgdk-x11-2.0.so
402 %attr(755,root,root) %{_libdir}/libgtk-x11-2.0.so
403 %{_includedir}/gail-1.0
404 %{_includedir}/gtk-2.0
405 %{_includedir}/gtk-unix-print-2.0
406 %{_aclocaldir}/gtk-2.0.m4
407 %{_libdir}/gtk-2.0/include
408 %{_pkgconfigdir}/gail.pc
409 %{_pkgconfigdir}/gdk-2.0.pc
410 %{_pkgconfigdir}/gdk-x11-2.0.pc
411 %{_pkgconfigdir}/gtk+-2.0.pc
412 %{_pkgconfigdir}/gtk+-unix-print-2.0.pc
413 %{_pkgconfigdir}/gtk+-x11-2.0.pc
414 %{_datadir}/gir-1.0/Gdk-2.0.gir
415 %{_datadir}/gir-1.0/GdkX11-2.0.gir
416 %{_datadir}/gir-1.0/Gtk-2.0.gir
417 %{_mandir}/man1/gtk-builder-convert.1*
418
419 %if %{with static_libs}
420 %files static
421 %defattr(644,root,root,755)
422 %{_libdir}/libgailutil.a
423 %{_libdir}/libgdk-x11-2.0.a
424 %{_libdir}/libgtk-x11-2.0.a
425 %endif
426
427 %if %{with apidocs}
428 %files apidocs
429 %defattr(644,root,root,755)
430 %{_gtkdocdir}/gail-libgail-util
431 %{_gtkdocdir}/gdk2
432 %{_gtkdocdir}/gtk2
433 %endif
434
435 %files examples
436 %defattr(644,root,root,755)
437 %attr(755,root,root) %{_bindir}/gtk-demo
438 %{_datadir}/gtk-2.0
439 %{_examplesdir}/%{name}-%{version}
440
441 %if %{with cups}
442 %files cups
443 %defattr(644,root,root,755)
444 %attr(755,root,root) %{_libdir}/gtk-2.0/%{abivers}/printbackends/libprintbackend-cups.so
445 %endif
446
447 %if %{with papi}
448 %files papi
449 %defattr(644,root,root,755)
450 %attr(755,root,root) %{_libdir}/gtk-2.0/%{abivers}/printbackends/libprintbackend-papi.so
451 %endif
This page took 0.081511 seconds and 2 git commands to generate.